import java.util.Iterator;
import java.util.LinkedList;

/**
 * @License: (C) Copyright 2013-2022
 * @Contact: abcque@outlook.com
 * @IDE: IntelliJ IDEA
 * @Encoding: utf-8
 * @Project: st2214st2215
 * @Package: PACKAGE_NAME
 * @File: LinkedListTest.java
 * @Time: 2023/4/18 14:19
 * @Author: abcque
 * @Description:
 * @Modifier:
 * @ModifyDate:
 * @ModifyRemark:
 */
public class LinkedListTest {
    public static void main(String[] args) {
        LinkedList<Integer> list = new LinkedList<>();

        // 插入的元素作为 list 对象的第一个元素
        list.addFirst(3);
        list.addFirst(2);
        list.addFirst(1);

        // 插入的元素作为 list 对象的最后一个元素
        list.addLast(7);
        list.addLast(8);
        list.addLast(9);

        Iterator<Integer> iterator = list.iterator();
        while (iterator.hasNext()) {
            System.out.println(iterator.next());
        }


        // getFirst 访问链表中的第一个元素
        Integer first = list.getFirst();
        // getLast 访问链表中的最后一个元素
        Integer last = list.getLast();
        System.out.println("first = " + first);
        System.out.println("last = " + last);

        // removeFirst 删除链表中的第一个元素，返回删除的元素
        Integer removeFirst = list.removeFirst();
        // removeList 删除链表中的最后一个元素，返回删除的元素
        Integer removeLast = list.removeLast();
        System.out.println("removeFirst = " + removeFirst);
        System.out.println("removeLast = " + removeLast);

        for (Integer integer : list) {
            System.out.println("integer = " + integer);
        }
    }
}
